﻿using AnQinManagermentBackendAPI.Model.Entity;
using AnQinManagermentBackendAPI.Model.View.CodeRule;
using AnQinManagermentBackendAPI.Model.View.Customer;
using AnQinManagermentBackendAPI.Model.View.Department;
using AnQinManagermentBackendAPI.Model.View.DevelopManagement;
using AnQinManagermentBackendAPI.Model.View.ImplementManagement;
using AnQinManagermentBackendAPI.Model.View.Menu;
using AnQinManagermentBackendAPI.Model.View.Project;
using AnQinManagermentBackendAPI.Model.View.SaleManagement;
using AnQinManagermentBackendAPI.Model.View.Staff;
using Microsoft.EntityFrameworkCore;

namespace AnQinManagermentBackendAPI.Common.DateBase
{
    public class DataContext : DbContext
    {
        /**
         * 构造函数注入
         */
        public DataContext(DbContextOptions<DataContext> options) : base(options) { }

        /**
         * 注入数据库与模型
         */

        /**
         * 编码规则表模型
         */
        public DbSet<CodeRuleModel> CodeRule { get; set; }
        /**
         * 编码规则表视图
         */
        public DbSet<CodeRuleView> CodeRuleView { get; set; }
        /**
         * 员工模型
         */
        public DbSet<StaffModel> Staff { get; set; }
        /**
         * 员工视图
         */
        public DbSet<StaffView> StaffView { get; set; }
        /**
         * 菜单模型
         */
        public DbSet<MenuModel> Menu { get; set; }
        /**
         * 菜单视图
         */
        public DbSet<MenuView> MenuView { get; set; }
        /**
         * 部门模型
         */
        public DbSet<DepartmentModel> Department { get; set; }
        /**
         * 部门视图
         */
        public DbSet<DepartmentView> DepartmentView { get; set; }
        /**
         * 项目模型
         */
        public DbSet<ProjectModel> Project { get; set; }
        /**
         * 项目视图
         */
        public DbSet<ProjectView> ProjectView { get; set; }
        /**
         * 项目视图 - 下拉
         */
        public DbSet<ProjectSelectView> ProjectSelectView { get; set; }
        /**
         * 客户模型
         */
        public DbSet<CustomerModel> Customer { get; set; }
        /**
         * 客户视图
         */
        public DbSet<CustomerView> CustomerView { get; set; }
        /**
         * 销售管理模型
         */
        public DbSet<SaleManagementModel> SaleManagement { get; set; }
        /**
         * 销售管理视图
         */
        public DbSet<SaleManagementView> SaleManagementView { get; set; }
        /**
         * 开发管理模型
         */
        public DbSet<DevelopManagementModel> DevelopManagement { get; set; }
        /**
         * 开发管理视图
         */
        public DbSet<DevelopManagementView> DevelopManagementView { get; set; }
        /**
         * 实施管理模型
         */
        public DbSet<ImplementManagementModel> ImplementManagement { get; set; }
        /**
         * 实施管理视图
         */
        public DbSet<ImplementManagementView> ImplementManagementView { get; set; }
    }
}
